
//外部类
class OuterClass {
    
    private int outerField = 10;//外部成员变量
    // 成员内部类
    class InnerClass {
        //内部类成员变量
        public int innerField = 20;

            //内部类方法
        public void printOuterField() {
        
            System.out.println("Outer field: " + outerField);//输出外部类outerField值
            System.out.println("Inner field: " + innerField);//输出内部类innerField值
            System.out.println("调用成功");
        }
    }
        //外部类方法
    public void createInnerObject() {
            //实例化InnerClass对象
        InnerClass inner = new InnerClass();

        inner.printOuterField();//调用内部类方法
    }
}

  public class Test {

    public static void main(String[] args) {

        OuterClass outer = new OuterClass();//实例化外部类对象

        outer.createInnerObject();//调用方法createInnerObject()
    }
}


// public class Test {
//     //成员内部类
//     class Node {
//         int val;
//         String str;
//     }
    

//     {
//         System.out.println("实例代码块");
//     }

//     static{
//         System.out.println("静态代码块");
//     }

//     public Test(){
//         System.out.println("构造方法");
//     }


// public static void main(String[] args) {

//     Test t1 = new Test();//实例化一个对象

//     {//普通代码块
       
//         System.out.println("普通代码块");
//     }
    
//          // int a = 10;
//         // int b = 20;
//         // int c = a + b;
//         // System.out.println(c);
// }
    
// }

